﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000A71 RID: 2673
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class LobbyCreateCsReq : IMessage<LobbyCreateCsReq>, IMessage, IEquatable<LobbyCreateCsReq>, IDeepCloneable<LobbyCreateCsReq>, IBufferMessage
	{
		// Token: 0x170021C2 RID: 8642
		// (get) Token: 0x0600779D RID: 30621 RVA: 0x0013FB4B File Offset: 0x0013DD4B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<LobbyCreateCsReq> Parser
		{
			get
			{
				return LobbyCreateCsReq._parser;
			}
		}

		// Token: 0x170021C3 RID: 8643
		// (get) Token: 0x0600779E RID: 30622 RVA: 0x0013FB52 File Offset: 0x0013DD52
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return LobbyCreateCsReqReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170021C4 RID: 8644
		// (get) Token: 0x0600779F RID: 30623 RVA: 0x0013FB64 File Offset: 0x0013DD64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return LobbyCreateCsReq.Descriptor;
			}
		}

		// Token: 0x060077A0 RID: 30624 RVA: 0x0013FB6B File Offset: 0x0013DD6B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LobbyCreateCsReq()
		{
		}

		// Token: 0x060077A1 RID: 30625 RVA: 0x0013FB74 File Offset: 0x0013DD74
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LobbyCreateCsReq(LobbyCreateCsReq other) : this()
		{
			this.fightGameMode_ = other.fightGameMode_;
			this.lobbyExtraInfo_ = ((other.lobbyExtraInfo_ != null) ? other.lobbyExtraInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x060077A2 RID: 30626 RVA: 0x0013FBC0 File Offset: 0x0013DDC0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LobbyCreateCsReq Clone()
		{
			return new LobbyCreateCsReq(this);
		}

		// Token: 0x170021C5 RID: 8645
		// (get) Token: 0x060077A3 RID: 30627 RVA: 0x0013FBC8 File Offset: 0x0013DDC8
		// (set) Token: 0x060077A4 RID: 30628 RVA: 0x0013FBD0 File Offset: 0x0013DDD0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public FightGameMode FightGameMode
		{
			get
			{
				return this.fightGameMode_;
			}
			set
			{
				this.fightGameMode_ = value;
			}
		}

		// Token: 0x170021C6 RID: 8646
		// (get) Token: 0x060077A5 RID: 30629 RVA: 0x0013FBD9 File Offset: 0x0013DDD9
		// (set) Token: 0x060077A6 RID: 30630 RVA: 0x0013FBE1 File Offset: 0x0013DDE1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public PlayerExtraInfo LobbyExtraInfo
		{
			get
			{
				return this.lobbyExtraInfo_;
			}
			set
			{
				this.lobbyExtraInfo_ = value;
			}
		}

		// Token: 0x060077A7 RID: 30631 RVA: 0x0013FBEA File Offset: 0x0013DDEA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as LobbyCreateCsReq);
		}

		// Token: 0x060077A8 RID: 30632 RVA: 0x0013FBF8 File Offset: 0x0013DDF8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(LobbyCreateCsReq other)
		{
			return other != null && (other == this || (this.FightGameMode == other.FightGameMode && object.Equals(this.LobbyExtraInfo, other.LobbyExtraInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x060077A9 RID: 30633 RVA: 0x0013FC48 File Offset: 0x0013DE48
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.FightGameMode != FightGameMode.None)
			{
				num ^= this.FightGameMode.GetHashCode();
			}
			if (this.lobbyExtraInfo_ != null)
			{
				num ^= this.LobbyExtraInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x060077AA RID: 30634 RVA: 0x0013FCA3 File Offset: 0x0013DEA3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x060077AB RID: 30635 RVA: 0x0013FCAB File Offset: 0x0013DEAB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x060077AC RID: 30636 RVA: 0x0013FCB4 File Offset: 0x0013DEB4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.lobbyExtraInfo_ != null)
			{
				output.WriteRawTag(50);
				output.WriteMessage(this.LobbyExtraInfo);
			}
			if (this.FightGameMode != FightGameMode.None)
			{
				output.WriteRawTag(64);
				output.WriteEnum((int)this.FightGameMode);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x060077AD RID: 30637 RVA: 0x0013FD10 File Offset: 0x0013DF10
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.FightGameMode != FightGameMode.None)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.FightGameMode);
			}
			if (this.lobbyExtraInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.LobbyExtraInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x060077AE RID: 30638 RVA: 0x0013FD68 File Offset: 0x0013DF68
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(LobbyCreateCsReq other)
		{
			if (other == null)
			{
				return;
			}
			if (other.FightGameMode != FightGameMode.None)
			{
				this.FightGameMode = other.FightGameMode;
			}
			if (other.lobbyExtraInfo_ != null)
			{
				if (this.lobbyExtraInfo_ == null)
				{
					this.LobbyExtraInfo = new PlayerExtraInfo();
				}
				this.LobbyExtraInfo.MergeFrom(other.LobbyExtraInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x060077AF RID: 30639 RVA: 0x0013FDD0 File Offset: 0x0013DFD0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x060077B0 RID: 30640 RVA: 0x0013FDDC File Offset: 0x0013DFDC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 50U)
				{
					if (num != 64U)
					{
						this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
					}
					else
					{
						this.FightGameMode = (FightGameMode)input.ReadEnum();
					}
				}
				else
				{
					if (this.lobbyExtraInfo_ == null)
					{
						this.LobbyExtraInfo = new PlayerExtraInfo();
					}
					input.ReadMessage(this.LobbyExtraInfo);
				}
			}
		}

		// Token: 0x04002DC9 RID: 11721
		private static readonly MessageParser<LobbyCreateCsReq> _parser = new MessageParser<LobbyCreateCsReq>(() => new LobbyCreateCsReq());

		// Token: 0x04002DCA RID: 11722
		private UnknownFieldSet _unknownFields;

		// Token: 0x04002DCB RID: 11723
		public const int FightGameModeFieldNumber = 8;

		// Token: 0x04002DCC RID: 11724
		private FightGameMode fightGameMode_;

		// Token: 0x04002DCD RID: 11725
		public const int LobbyExtraInfoFieldNumber = 6;

		// Token: 0x04002DCE RID: 11726
		private PlayerExtraInfo lobbyExtraInfo_;
	}
}
